TDMA is a technology for shared medium systems. It allows several elements to share the same bandwidth by dividing it into different timeslots. The elements transmit or receive data in rapid succession, one after the other, each using their own timeslot. This allows multiple elements to share the same transmission medium.
In the environment of automotive design this type of system is now being increasingly adopted to provide an electronic protocol for all control systems and circuitry within an automobile. FlexRay is an automotive communication protocol. The protocol provides flexibility and determinism by combining scalable static and dynamic message transmission, incorporating the advantages of familiar synchronous and asynchronous protocols. The protocol also supports fault-tolerant clock synchronization via a global time base; collision-free bus access; guaranteed message latency; message oriented addressing via identifiers; scalable system fault-tolerance via the support of either single or dual channels.
FlexRay is a protocol adapted for high data rates which supports the needs of future in-car control applications.
FlexRay can operate in single- or dual-channel mode and can provide redundancy if this is required. FlexRay allows both synchronous and asynchronous data transmissions and a clock synchronization mechanism which is fault tolerant. As the clock synchronization is a distributed mechanism if one node fails or for some reason is taken off the network, the other nodes will continue to operate synchronously.
FIG. 1 shows a high level block diagram of a typical FlexRay system as used in a car. A FlexRay backbone 100 is connected to a plurality of gateways (GW1, GW2, GW3, GW4, GWn) each of which provides and receives control signals for different systems or elements in the car. This backbone may be formed in different forms, e.g. as a bus, a star or combination thereof. A non restrictive list of elements or nodes which might be controlled using FlexRay, include: engine, transmission, video, phone, radio, infotainment, locks, climate control, seat control, sunroof, steer-by-wire, brake-by-wire, or any other type of functions.
Each node comprises a communication controller (CC), connected to the Flexray network, and a Micro controller unit (MCU), which controls the CC operations and writes/reads data to/from the CC. Each node has allocated reception and/or transmission time slots in which it must transmit or receive in accordance with know TDMA practices. In a static TDMA environment the slot is not usually empty or the clock synchronisation may be adversely impacted. FlexRay can run a so call dynamic TDMA. In the dynamic TDMA environment the time slots are changeable with each slot having a minimum time allocated to it which can be increased if necessary. If one node takes significantly longer than the allocated slot the time slot of the next node may be used up and that node may have to wait until the next communication cycle to transmit or receive. As a result some and often most of the dynamic segment slots may be empty.
Referring to FIG. 2 each receive buffer includes a set of bits (slot status field (SSF)) which explain the buffer status after any particular reception in a time slot. These indicate: (a) whether or not a valid frame has been received; (b) identification of errors in the data received and (c) absence or not of a signal on the Flexray network and other indicators according to Flexray protocol. The CC generates the SSF and stores it in the node receive buffers after each reception assigned to that node slot/s. When the status is updated it can be signalled to the host MCU by setting an interrupt flag and generating an interrupt signal if enabled. This occurs regardless of whether the slot was empty or not. The interrupt flag is referred to as the RIF.
EP1355458 B1 discloses a Method for transmitting data within a communication system. This patent describes a TDMA scheme for slot based data transmission but does not solve the problem of receipt of empty slots. The patent discloses updating the slot status in any circumstance and there is no teaching of changing the approach to interrupt control mechanisms.
The overwriting of the slot status field SSF by all-zero empty slot status data and generation of non-required interrupts as described above are not condusive to many customer applications. Accordingly a need exists to provide a solution to at least some of the problems identified in the prior art.